﻿// 4347. 转换.cpp : 此文件包含 "main" 函数。程序执行将在此处开始并结束。
//

#include <iostream>


/*
https://www.acwing.com/problem/content/4350/


给定一个长度为 n
 的整数数组 a1,a2,…,an
。

元素初始值均为 0
。

下面要对该数组进行 m
 次操作，操作分为以下四种：

1 x y c，将 ax∼ay
 之间的每个元素增加 c
，即对于 i∈[x,y]
，令 ai=ai+c
。
2 x y c，将 ax∼ay
 之间的每个元素乘以 c
，即对于 i∈[x,y]
，令 ai=ai×c
。
3 x y c，将 ax∼ay
 之间的每个元素变为 c
，即对于 i∈[x,y]
，令 ai=c
。
4 x y p，请你计算并输出 apx+apx+1+…+apy
 对 10007
 取模后的结果。
请你完成所有操作。

输入格式
输入包含多组测试数据。

每组数据第一行包含两个整数 n,m
。

接下来 m
 行，每行描述一个操作，格式如题面描述。

当输入 n=0,m=0
 时，表示输入结束。

输出格式
对于每个操作 4
，在一行中输出一个结果。

数据范围
每个输入最多包含 10
 组数据。
1≤n,m≤105
,
1≤x≤y≤n
,
1≤c≤10000
,
1≤p≤3
。

输入样例：
5 5
3 3 5 7
1 2 4 4
4 1 5 2
2 2 5 8
4 3 5 3
0 0
输出样例：
307
7489
*/
int main()
{
    std::cout << "Hello World!\n";
}

 